This might sound like it’s come from a parenting book but it’s all about whether to ask ‘are you sure?’ or allow users to undo.
In my first story ‘User Experience is …’ I promised that …
"over the course of a few stories, I’ll try and cover a few of the sciences we draw upon in our art as a creative community to create engaging experiences."
Alright, you’ll be forgiven thinking that these might be different approaches to parenting! And I’ve very much taken this perspective on this approach to interaction design. It’s the balance between guiding the user and catching them before they fall and leaving them to make their own mistakes so they can learn. So to bring this back to digital interactions it’s all about whether you ask ‘are you sure?’ or allow users to undo an action.
This debate has been something of a constant through the teams and products I’ve worked on. And there isn’t one correct answer. Ultimately it does depend on:
the demographic of the end users
the market you’re operating in
the impact of submitting the action too soon or getting it wrong
the overall interaction approach within your product.
So is it better to ask forgiveness than permission?
Again that depends on the risk of delay versus the impact of getting the resulting action wrong. But often hindsight proves that it was OK to trust your instincts and act decisively. However you might only remember the situations where things go have gone wrong and that skews your perception.
So in most cases it might be better to trust your instincts to act decisively and then apologise for it later if it was wrong, than seeking approval to act, risk delay, risk objections based on hypothetical situations that haven’t yet happened, opening up conversation without any further insight and spending time to ensure that you are going to be 100% correct.
So when is it best to ask for permission?
Cute cats aside, it’s always best to ask for permission or confirmation when an interaction or action is serious enough to impact or cause damage to a person’s reputation, job prospects, health or finances. For instance, a moment of not paying attention, being distracted by multitasking or a couple of accidental clicks, could result in a user embarrassing themselves in front of their boss, or wipe out hours of work.
In these situations, it’s most common to whip out the good old dialog box and ask ‘are you sure?’. If it’s important, the user will read the message and either confirm or deny that’s what they wanted to do right, job done?!
Well not quite. Granted it’s very easy to implement and doesn’t require a lot of thought, but the confirmation dialog is a much-overused interaction design pattern. And is often it’s used incorrectly. Here’s why:
Challenges presented when using the confirmation dialog box:
It breaks the user’s flow
The concept of the confirmation dialog box is to validate the action they are intending to do. But this causes the users to be distracted from the flow of what they were trying to do. The confirmation dialog box introduces new information to understand. And often these new confirmation dialog boxes actually hide the information and action that you need to check.
We’ve learnt to ignore them
We’ve learnt that confirmation dialog boxes are being used incorrectly and don’t add any value, so are annoying, so don’t read them.
They are inherently annoying
Even if we read them, as they interrupt us and aren’t expected, we see them as a nuisance, so want to get rid of them as quickly as possible. So we don’t always take the time to fully understand them and the impact of the action we’re taking.
We’ve found shortcuts to get around them
If nothing stands out, we assume everything is right and click anything that has a positive phrase, in order to get rid of that annoying little box. This is immediately thought of as the “keep doing what I was doing” button.
We habitually click confirm
We form hundreds of habits to help us on a daily basis. One of those common habits is when we see a confirm dialog, we try to close it quickly, despite what it says. The habit of closing dialog boxes quickly is even more prominent with the recent design trend to pop up a newsletter signup form for everything.
They’re often not accessible
Because they interrupt the user’s flow, this needs to be announced to users with additional needs, so they understand the context has shifted. If this isn’t done well then these users can find this disorienting and can block the user from completing their task.
So when is it best to ask for forgiveness?
But it’s not enough to just say why you shouldn’t use confirm dialogs and they aren’t always the best solution. So let’s go over why using undo is a better alternative.
The benefits of using undo instead
It assumes the design is usable and understandable and the user knows what they want to achieve
The main benefit of allowing the user to undo is that you’ve probably spent longer making sure there is no ambiguity or uncertainty left. This means the interface is clear and simple and does what it’s supposed to without asking the user to validate their actions.
Provides a smoother journey
By removing the ‘are you sure?’ dialog box and replacing it without an unobtrusive way to undo, the user can stay in the flow of what they were doing.
It invites exploration
Knowing that the product is forgiving and having the ability to undo is a safety net and reassuring to users that they won’t break something. Often a barrier to using something is the fear of the unknown and breaking or ruining something.
Showing instead of telling
Sometimes users aren’t 100% sure what an action does. So by performing the action and showing the result, the user sees what is affected and what their outcome is.
How to best use the undo pattern
So it’s clear there are some advantages to using undo instead of asking the user to validate all of their actions. But you can still go wrong with the undo pattern. You have to make the undo pattern work in a way that makes sense.
Provides meaningful feedback
It’s important that it provides contextual feedback on what has just happened, so they understand what the undo will roll back.
Make it visible
If deleting items is common, such as in a list, put the option to undo next to the deleted item. If undo is less common, a banner at the top or bottom of the screen can be a good option.
Make items recoverable by moving to a transition space
Create a place where things go instead of deleting them right away. Transition spaces like trash cans, archives, outboxes might all sound familiar.
Delay irreversible actions
If the action is something you can’t undo, delay the action. Gmail has an option to delay sending emails 15 seconds, which gives you a 15 second hold/transition space to undo quickly. If you’ve made a mistake you normally realise it straight away (accompanied by shouting a the computer!).
What if you can’t undo?
Sometimes it’s not technically possible to undo the action the user has interacted with, as it creates a breaking change in the system or is a hard system change instead of a soft software one. This might force the use of a ‘are you sure?’ dialog box.
In those cases, it’s important to use a confirm dialog that will protect the user from making a mistake. But you can still make these ‘are you sure?’ dialog boxes better:
Make dialog boxes uncommon
For confirmation dialog boxes to work, they must only appear when a user will almost definitely want to change their mind or stop what is happening by clicking the ‘No’ or ‘Cancel’ button, and they should never appear when a user is likely to click the ‘Yes’ or ‘OK’ button.
Make them unique
By making them unique you break the pattern and force users to pay attention. If your dialog box looks the same as every other one, the user will try and use the same shortcuts they’ve used before.
Make the action of the button clear
Have the confirm button say what it actually does rather than “Yes” or “Confirm”. You’re more likely to accidentally click “Confirm” rather than “Delete kittens.jpg”
So there you have it the pro’s and con’s of nurturing and guiding or being forgiving of mistakes approaches in interaction design.
Next up I’m going to look at how design is now firmly embedded throughout large organisations and enterprises around the globe, by reflecting on User Experience is … for startups and enterprise.
Originally written as part of the ‘User Experience is …’ series for UX Collective.